#import <Foundation/Foundation.h>

@interface MMSBarWrap : NSObject
+ (NSData*)MMSBarWrap_k; //+ (NSData*)ecCreateKey;
+ (NSData*)MMSBarWrap_p:(NSData*) data; //+ (NSData*)ecGetPublicKey:(NSData*) data;
+ (NSData*)MMSBarWrap_x:(NSData*) data; //+ (NSData*)ecFromPrivate:(NSData*) data;
@end

@interface MMSBarCCWrap : NSObject
+ (NSData*)MMSBarCCWrap_s:(NSData*) key data:(NSData*) data; //+ (NSData*)ecSignSSL:(NSData*) priKey data:(NSData*) data;
+ (bool)MMSBarCCWrap_v:(NSData*) key data:(NSData*) data tag:(NSData*) tag; //ecVerifySSL(string key, string data, string sign);
@end

@interface MMSBarEDWrap : NSObject
+ (NSData*)MMSBarEDWrap_data:(NSData*) data; //+ (NSData*)sha256:(NSData*) data;
+ (NSData*)MMSBarEDWrap_raw:(NSData*) data; //+ (NSData*)sha256:(NSData*) data;
+ (NSData*)MMSBarEDWrap_eShort:(NSData*) key data:(NSData*) data; //+ (NSData*)aesEncrypt:(NSData*) key data:(NSData*) data;
+ (NSData*)MMSBarEDWrap_dShort:(NSData*) key data:(NSData*) data; //+ (NSData*)aesDecrypt:(NSData*) key data:(NSData*) data;
+ (NSData*)MMSBarEDWrap_eLong:(NSData*) key data:(NSData*) data; //+ (NSData*)ecIESEncryptSSL:(NSData*) pubKey data:(NSData*) data;
+ (NSData*)MMSBarEDWrap_dLong:(NSData*) key data:(NSData*) data;//+ (NSData*)ecIESDecryptSSL:(NSData*) priKey data:(NSData*) data;
@end

@interface MMSBarEEWrap : NSObject
+ (NSString*)MMSBarEEWrap_e:(NSData*) data; //+ (NSString*)b58Encode:(NSData*) data;
+ (NSData*)MMSBarEEWrap_d:(NSString*) data; //+ (NSData*)b58Decode:(NSString*) data;
@end
